// core
.p-checkbox {
    position: relative;
    display: inline-flex;
    user-select: none;
    vertical-align: bottom;
}

.p-checkbox-input {
    cursor: pointer;
}

.p-checkbox-box {
    display: flex;
    justify-content: center;
    align-items: center;
}

// theme
.p-tristatecheckbox {
    &.p-variant-filled {
        .p-checkbox-box {
            background-color: $inputFilledBg;
        }

        &.p-highlight {
            .p-checkbox-box {
                background: $checkboxActiveBg;
            }
        }

        &:not(.p-disabled) {
            &:has(.p-checkbox-input:hover) {
                .p-checkbox-box {
                    background-color: $inputFilledHoverBg;
                }

                &.p-highlight {
                    .p-checkbox-box {
                        background: $checkboxActiveHoverBg;
                    }
                }
            }
        }
    }
}
